def isPalindrome(s: str) -> bool:
	"""判断字符串 s 是否为回文字符串。

	回文定义：从左到右读与从右到左读完全相同。

	实现要求：使用 for 循环（循环次数固定为字符串长度的一半）进行比较。
	"""
	# 处理空字符串或单字符的情况
	n = len(s)
	if n <= 1:
		return True

	# 只需比较前半部分和后半部分对应字符
	for i in range(n // 2):
		if s[i] != s[n - 1 - i]:
			return False
	return True


if __name__ == '__main__':
	try:
		text = input('请输入要判断的字符串：')
	except Exception:
		print('读取输入失败')
	else:
		if isPalindrome(text):
			print(f'"{text}" 是回文字符串。')
		else:
			print(f'"{text}" 不是回文字符串。')

	# 自检示例
	samples = ['abcba', 'abca', '', 'a', 'abba']
	print('\n自检示例：')
	for s in samples:
		print(f"{s}: {isPalindrome(s)}")

